package cGUI;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.TextArea;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.io.FileNotFoundException;
import java.io.IOException;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.border.TitledBorder;

import org.xml.sax.SAXException;

public class VentanaAyuda extends JFrame implements ActionListener, ItemListener, WindowListener
{
	
	JPanel panelSuperior= new JPanel();
	JPanel panelCentral1 = new JPanel();
	JPanel panelCentral2 = new JPanel();
	JPanel panelInferior= new JPanel();

	JPanel J1= new JPanel();
	JPanel J2= new JPanel();
	JPanel J3= new JPanel();
	JPanel J4= new JPanel();
	JPanel J5= new JPanel();
	JPanel J6= new JPanel();


	static JComboBox seleccion= new JComboBox();

	JLabel JLogo= new JLabel();
	JLabel JTitulo= new JLabel();
	JLabel JCriterio= new JLabel();
	

	JButton JVolver= new JButton();
	JScrollPane Scroll;

	Color fondo=new Color(238,238,238);
	Font fuente=new Font("Arial Black", Font.BOLD , 15);
	JFrame ventana;
	
	private JPanel paneltexto;
    private JTextArea texto;	
    private JPanel panelscroll;
    private JScrollPane consoleScroll;
	
	private Ayuda a;
	
	public VentanaAyuda(JFrame jf)
	{
		ventana =jf;
		ventana.setEnabled(false);
		a=new Ayuda();
		
		consoleScroll= new JScrollPane();
        texto= new JTextArea();
        
        consoleScroll.setBorder(new TitledBorder("AYUDA de la Biblioteca de DEUSTO"));
        consoleScroll.setPreferredSize(new Dimension(380, 130));
        texto.setBackground(Color.white);
        texto.setEditable(false);
        texto.setPreferredSize(null);
        consoleScroll.setViewportView(texto);
        
		ImageIcon titulo= new ImageIcon("src/botones/Titulo.jpg");
		JLogo.setIcon(titulo);
		JLogo.setBackground(fondo);
		JLogo.setOpaque(true);
		
		JTitulo.setText("  ::AYUDA ");
		JTitulo.setFont(fuente);
		
		JCriterio.setText("Tema:");
		seleccion.addItem("- CRITERIO -");
		seleccion.addItem("Reserva de Libros");
		seleccion.addItem("Administracion de perfiles");
		seleccion.addItem("e-mail");
		seleccion.addItem("Contacto");
		
		JVolver.setText("Volver");
		
		J1.setLayout(new FlowLayout());
		J1.add(JCriterio);
		J1.add(seleccion);
		J2.add(consoleScroll);
		J3.add(JVolver);
		
		panelSuperior.setLayout(new BorderLayout());
		panelCentral1.setLayout(new GridLayout(3,1));
		panelCentral2.setLayout(new GridLayout());
		panelInferior.setLayout(new FlowLayout());
		
		panelSuperior.add(JLogo,"North");
		panelSuperior.add(JTitulo);
		panelCentral1.add(J5);
		panelCentral1.add(J1);
		panelCentral1.add(J6);
		panelCentral2.add(J2);
		panelInferior.add(J3);
		
		
		this.setTitle("Ayuda");
		this.getContentPane().add(panelSuperior);
		this.getContentPane().add(panelCentral1);
		this.getContentPane().add(panelCentral2);
		this.getContentPane().add(panelInferior);
		this.getContentPane().setLayout(new GridLayout(4,1));
		this.setSize(400,520);
		this.setVisible(true);
		texto.setEditable(false);
		this.setResizable(false);
		
		JVolver.addActionListener(this);
		seleccion.addItemListener(this);
		this.addWindowListener(this);
		
	}
	public void actionPerformed(ActionEvent e)
	{
		ventana.setEnabled(true);
		seleccion.removeAllItems();
		this.dispose();
	}

	public void itemStateChanged(ItemEvent ie) {
		
		if(seleccion.getSelectedIndex()==0)
		{
			texto.setText("Seleccione un criterio. ");
		}
		if(seleccion.getSelectedIndex()==1)
		{
		
			parsear("opcion1");
			int pos=a.getTexto().indexOf("9");
			int pos2=a.getTexto().indexOf("8");
			int pos3=a.getTexto().indexOf("7");
			int pos4=a.getTexto().indexOf("6");
			int pos5=a.getTexto().indexOf("5");
			int pos6=a.getTexto().indexOf("0");
			int pos7=a.getTexto().indexOf("x");
			String frase=a.getTexto().substring(0, pos);
			String frase2=a.getTexto().substring(pos+1, pos2);
			String frase3=a.getTexto().substring(pos2+1, pos3);
			String frase4=a.getTexto().substring(pos3+1, pos4);
			String frase5=a.getTexto().substring(pos4+1, pos5);
			String frase6=a.getTexto().substring(pos5+1, pos6);
			String frase7=a.getTexto().substring(pos6+1, pos7);
			texto.setText(frase+"\n\n"+frase2+"\n"+frase3+"\n\n"+frase4+"\n"+frase5+"\n"+frase6+"\n\n"+frase7+"\n");
		}
		
		if(seleccion.getSelectedIndex()==2)
		{
			parsear("opcion2");
			int pos=a.getTexto().indexOf("1");
			int pos2=a.getTexto().indexOf("2");
			int pos3=a.getTexto().indexOf("3");
			int pos4=a.getTexto().indexOf("4");
			int pos5=a.getTexto().indexOf("5");
			int pos6=a.getTexto().indexOf("6");
			int pos7=a.getTexto().indexOf("7");
			int pos8=a.getTexto().indexOf("8");
			String frase=a.getTexto().substring(0, pos);
			String frase2=a.getTexto().substring(pos+1, pos2);
			String frase3=a.getTexto().substring(pos2+1, pos3);
			String frase4=a.getTexto().substring(pos3+1, pos4);
			String frase5=a.getTexto().substring(pos4+1, pos5);
			String frase6=a.getTexto().substring(pos5+1, pos6);
			String frase7=a.getTexto().substring(pos6+1, pos7);
			String frase8=a.getTexto().substring(pos7+1, pos8);
			texto.setText(frase+"\n"+frase2+"\n\n"+frase3+"\n"+frase4+"\n"+frase5+"\n\n"+frase6+"\n"+frase7+"\n"+frase8);
		}
		
		if(seleccion.getSelectedIndex()==3)
		{
			parsear("opcion3");
			int pos=a.getTexto().indexOf("1");
			int pos2=a.getTexto().indexOf("2");
			int pos3=a.getTexto().indexOf("3");
			int pos4=a.getTexto().indexOf("4");
			String frase=a.getTexto().substring(0, pos);
			String frase2=a.getTexto().substring(pos+1, pos2);
			String frase3=a.getTexto().substring(pos2+1, pos3);
			String frase4=a.getTexto().substring(pos3+1, pos4);
			texto.setText(frase+"\n"+frase2+"\n"+frase3+"\n"+frase4);
		}
		
		if(seleccion.getSelectedIndex()==4)
		{
			parsear("opcion4");
			int pos=a.getTexto().indexOf("1");
			int pos2=a.getTexto().indexOf("2");
			int pos3=a.getTexto().indexOf("3");
			String frase=a.getTexto().substring(0, pos);
			String frase2=a.getTexto().substring(pos+1, pos2);
			String frase3=a.getTexto().substring(pos2+1, pos3);
			texto.setText(frase+"\n"+frase2+"\n"+frase3);
			
		}
	}
	
	public void parsear(String opcion)
	{
		try 
		{
			Parseador p=new Parseador(opcion,a);
			p.leer("ayuda.xml");
		} 
		
		catch (SAXException e)
		{
			e.printStackTrace();
		} 
		
		catch (FileNotFoundException e)
		{
			e.printStackTrace();
		} 
		
		catch (IOException e) 
		{
			
			e.printStackTrace();
		}
		
	}
	public void windowActivated(WindowEvent arg0) {
		// TODO Auto-generated method stub
		
	}
	public void windowClosed(WindowEvent arg0) {
		// TODO Auto-generated method stub
		
	}
	public void windowClosing(WindowEvent arg0)
	{
		seleccion.removeAllItems();
		ventana.setEnabled(true);
		this.dispose();
		
	}
	public void windowDeactivated(WindowEvent arg0) {
		// TODO Auto-generated method stub
		
	}
	public void windowDeiconified(WindowEvent arg0) {
		// TODO Auto-generated method stub
		
	}
	public void windowIconified(WindowEvent arg0) {
		// TODO Auto-generated method stub
		
	}
	public void windowOpened(WindowEvent arg0) {
		// TODO Auto-generated method stub
		
	}
	

	
	
	
	
	
	
	
	

}
